/*
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License
 * as published by the Free Software Foundation; either version 2
 * of the License, or (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 
 * MA  02110-1301, USA.
 *
 * http://www.gnu.org/copyleft/gpl.html
 */

package com.aionemu.gameserver.model.templates.npcTemplate;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;

/**
 * @author Mr. Poke
 *
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CreatureStatData")
public class CreatureStatData
{

	@XmlAttribute
	protected int		hp;
	@XmlAttribute
	protected int		mp;
	@XmlAttribute
	protected int		exp;
	@XmlAttribute(name = "move_speed_combat_run")
	protected Float		moveSpeedCombatRun	= 0f;
	@XmlAttribute(name = "move_speed_normal_run")
	protected Float		moveSpeedNormalRun	= 0f;
	@XmlAttribute(name = "move_speed_normal_walk")
	protected Float		moveSpeedNormalWalk	= 0f;
	@XmlAttribute(name = "attack_delay")
	protected int		attackDelay			= 2000;
	@XmlAttribute(name = "attack_rate")
	protected int		attackRate;
	@XmlAttribute(name = "attack_range")
	protected Float		attackRange			= 2f;
	@XmlAttribute(name = "sensory_range")
	protected Float		sensoryRange = 0f;
	@XmlAttribute(name = "ammo_speed")
	protected int	ammoSpeed;
	@XmlAttribute(name = "p_attack")
    protected int pAttack;
	@XmlAttribute(name = "p_accuracy")
    protected int pAccuracy;

	/**
	 * Gets the value of the hp property.
	 * 
	 * @return
	 *     possible object is
	 *     {@link Integer }
	 *     
	 */
	public int getHp()
	{
		return hp;
	}

	/**
	 * Gets the value of the mp property.
	 * 
	 * @return
	 *     possible object is
	 *     {@link Integer }
	 *     
	 */
	public int getMp()
	{
		return mp;
	}

	/**
	 * Gets the value of the exp property.
	 * 
	 * @return
	 *     possible object is
	 *     {@link Integer }
	 *     
	 */
	public int getExp()
	{
		return exp;
	}

	/**
	 * Gets the value of the moveSpeedCombatRun property.
	 * 
	 * @return
	 *     possible object is
	 *     {@link Float }
	 *     
	 */
	public Float getMoveSpeedCombatRun()
	{
		return moveSpeedCombatRun;
	}

	/**
	 * Gets the value of the moveSpeedNormalRun property.
	 * 
	 * @return
	 *     possible object is
	 *     {@link Float }
	 *     
	 */
	public Float getMoveSpeedNormalRun()
	{
		return moveSpeedNormalRun;
	}

	/**
	 * Gets the value of the moveSpeedNormalWalk property.
	 * 
	 * @return
	 *     possible object is
	 *     {@link Float }
	 *     
	 */
	public Float getMoveSpeedNormalWalk()
	{
		return moveSpeedNormalWalk;
	}

	/**
	 * Gets the value of the attackDelay property.
	 * 
	 * @return
	 *     possible object is
	 *     {@link Integer }
	 *     
	 */
	public int getAttackDelay()
	{
		return attackDelay;
	}

	/**
	 * Gets the value of the attackRate property.
	 * 
	 * @return
	 *     possible object is
	 *     {@link Integer }
	 *     
	 */
	public int getAttackRate()
	{
		return attackRate;
	}

	/**
	 * Gets the value of the attackRange property.
	 * 
	 * @return
	 *     possible object is
	 *     {@link Float }
	 *     
	 */
	public Float getAttackRange()
	{
		return attackRange;
	}

	/**
	 * Gets the value of the sensoryRange property.
	 * 
	 * @return
	 *     possible object is
	 *     {@link Float }
	 *     
	 */
	public Float getSensoryRange()
	{
		return sensoryRange;
	}

	/**
	 * Gets the value of the ammoSpeed property.
	 * 
	 * @return
	 *     possible object is
	 *     {@link Integer }
	 *     
	 */
	public int getAmmoSpeed()
	{
		return ammoSpeed;
	}
	
    public int getPAttack()
    {
        return pAttack;
    }
    
    public int getPAccuracy()
    {
        return pAccuracy;
    }
}
